<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>vue基于mvvm模型的数据双向绑定机制的理解</title>
</head>
<!-- 引入样式 -->
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<!-- 开发环境版本，包含了有帮助的命令行警告 -->
<!--<script src="https://cdn.jsdelivr.net/npm/vue@2/dist/vue.js"></script>-->
<!--本地vue库文件-->
<script type="text/javascript" src="vue-v2.6.14/vue.min.js"></script>
<!--使用axios第三方的组件进行一步查询操作，完成ajax请求处理，当然可以使用jquery实现，此处使用 axios 组件-->
<!--<script type="text/javascript" src="axios-0.21.1/axios.min.js"></script>-->
<!-- 引入组件库 -->
<script src="https://unpkg.com/element-ui/lib/index.js"></script>

<body>
<div id="app">
    <template>
        <div>
            <el-form ref="form" :model="formUserInfo" label-width="80px">
                <el-row>
                    <el-col :span="12">
                        <el-form-item label="用户名">
                            <el-input v-model="formUserInfo.username"></el-input>
                        </el-form-item>
                    </el-col>

                    <el-col :span="12">
                        <el-form-item label="密码">
                            <el-input v-model="formUserInfo.userpsw"></el-input>
                        </el-form-item>
                    </el-col>

                    <el-col :span="12">
                        <el-form-item label="地址">
                            <el-input v-model="formUserInfo.useraddress"></el-input>
                        </el-form-item>
                    </el-col>

                    <el-col :span="12">
                        <el-form-item label="电话">
                            <el-input v-model="formUserInfo.usertel"></el-input>
                        </el-form-item>
                    </el-col>

                    <el-col :span="12">
                        <el-form-item label="出生日期">
                            <el-date-picker type="date" placeholder="选择日期" v-model="formUserInfo.userbirthday"
                                            style="width: 100%;"></el-date-picker>
                        </el-form-item>
                    </el-col>

                    <el-col :span="16" :offset="8">
                        <el-button  type="success" v-on:click="doSubmit">保存</el-button>
                    </el-col>
                </el-row>
            </el-form>
        </div>
    </template>
</div>
<!--使用axios第三方的组件进行一步查询操作，完成ajax请求处理，当然可以使用jquery实现，此处使用 axios 组件-->
<script type="text/javascript" src="axios-0.21.1/axios.min.js"></script>
<script type="text/javascript" src="qs-6.10.1/dist/qs.js"></script>
<script type="text/javascript">
    new Vue({
        el: '#app',
        data() {
            return {
                // 表单对应的数据模型
                formUserInfo: {
                    userid: '',
                    username: '',
                    userpsw: '',
                    useraddress: '',
                    usertel: '',
                    userregdate: '',
                    userbirthday: '',
                }
            }
        },
        methods: {
            doSubmit() {
                console.log('保存的表单：');
                console.log(this.formUserInfo)
                let urlParas = Qs.stringify(this.formUserInfo);
                console.log(urlParas);
                // 发送服务器异步请求
                axios.post('UserInfoSave',urlParas).then(res=>{ // then里面匿名的function等同于ajax的回调函数
                    console.log("查询结果集：");
                    console.log(res.data);
                    // 更新data中的数据，并同步到view页面进行显示

                }).catch(err =>{
                    alert('发生了异常');
                })
            }
        }
    })
</script>
</body>
</html>